<template>
  <div id="cesiumContainer" style="width: 100%;height: 100vh;"></div>
</template>

<script setup>
import {onMounted, reactive, ref} from 'vue';
import * as Cesium from 'cesium';
// 设置Cesium的基础URL（如果你将Cesium的assets文件复制到了public目录）
if (typeof window !== 'undefined') {
  window.CESIUM_BASE_URL = '/';
}
onMounted(() => {
  init()
});
const init = ()=>{
  const token = "ef908bf32ed7a8ac22f36baea30c65ac"
  const tdtUrl = 'https://t{s}.tianditu.gov.cn/'
  const subdomains = ['0', '1', '2', '3', '4', '5', '6', '7']
  let viewer = new Cesium.Viewer("cesiumContainer", {
    // terrainProvider: terrainProvider,
    homeButton: false, // 是否显示主页按钮
    scene3DOnly : true,
    animation: false, // 是否显示左下角的仪表盘
    navigationHelpButton: false, // 是否显示右上角的帮助按钮
    infoBox: false, // 是否显示提示信息
    selectionIndicator: false,
    baseLayerPicker: false,
    geocoder: false,
    timeline: false,
    fullscreenButton: false,
    shouldAnimate: false,
  });
  // Cesium.Camera.DEFAULT_VIEW_RECTANGLE = Cesium.Rectangle.fromDegrees( 113.307, 33.733, 90); //西南东北，默认显示中国


  // 叠加天地图影像服务
  viewer.imageryLayers.addImageryProvider(new Cesium.UrlTemplateImageryProvider({
    url: tdtUrl + 'DataServer?T=img_w&x={x}&y={y}&l={z}&tk=' + token,
    subdomains: subdomains,
    tilingScheme : new Cesium.WebMercatorTilingScheme(),
    maximumLevel : 18
  }));
  // // 设置模型的位置，确保它出现在正确的经纬度上
  //   tileset.modelMatrix = Cesium.Transforms.eastNorthUpToFixedFrame(
  //     Cesium.Cartesian3.fromDegrees(118.78055, 31.91447, 25)
  // )
  // 叠加天地图影像国境线服务
  // viewer.imageryLayers.addImageryProvider(new Cesium.UrlTemplateImageryProvider({
  //   url: tdtUrl + 'DataServer?T=ibo_w&x={x}&y={y}&l={z}&tk=' + token,
  //   subdomains: subdomains,
  //   tilingScheme : new Cesium.WebMercatorTilingScheme(),
  //   maximumLevel : 18
  // }));

  // 设置平顶山市的中心位置和视角
  const pingdingshanCoordinates = { latitude: 33.733, longitude: 113.307, height: 500 }; // 调整高度

  // viewer.scene.screenSpaceCameraController.maximumZoomDistance = 700000; // 设置为 5000 米

  // window.viewer_uav = viewer;

  // addModel(viewer)
  // Gps(viewer)


  //移动视角
  // cameraMove(viewer,pingdingshanCoordinates)
}
</script>
<style scoped>
#cesiumContainer {
  width: 100%;
  height: 100%;
  margin: 0;
  padding: 0;
  overflow: hidden;
}
</style>
